package tr.edu.metu.is.mega.common.dto;

import java.util.Date;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

/**
 * Data structure class for announcements.
 * 
 */
public class AnnouncementDTO extends BaseDTO {

    private static final long serialVersionUID = 8331567605944724937L;

    public static final String FIELD_TEXT = "announcementText";

    public static final String FIELD_DATE = "dateCreated";

    public static final String FIELD_CREATEDBY = "createdBy";

    @NotNull
    private String announcementText;

    @NotNull
    @Size(max = 100)
    private String createdBy;

    @NotNull
    private Date dateCreated;

    @NotNull
    private CourseDTO course;

    public AnnouncementDTO() {
    }

    /**
     * Returns announcementText.
     * 
     * @return the announcementText
     */
    public String getAnnouncementText() {
        return announcementText;
    }

    /**
     * Sets announcementText value.
     * 
     * @param announcementText the announcementText to set
     */
    public void setAnnouncementText(String announcementText) {
        this.announcementText = announcementText;
    }

    /**
     * Returns createdBy.
     * 
     * @return the createdBy
     */
    public String getCreatedBy() {
        return createdBy;
    }

    /**
     * Sets createdBy value.
     * 
     * @param createdBy the createdBy to set
     */
    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    /**
     * Returns dateCreated.
     * 
     * @return the dateCreated
     */
    public Date getDateCreated() {
        return dateCreated;
    }

    /**
     * Sets dateCreated value.
     * 
     * @param dateCreated the dateCreated to set
     */
    public void setDateCreated(Date dateCreated) {
        this.dateCreated = dateCreated;
    }

    /**
     * Returns course.
     * 
     * @return the course
     */
    public CourseDTO getCourse() {
        return course;
    }

    /**
     * Sets course value.
     * 
     * @param course the course to set
     */
    public void setCourse(CourseDTO course) {
        this.course = course;
    }

}
